package com.opgea.qms.web.form;

import java.math.BigInteger;

public class TokenDetailsDTO {

    private Long id;
    private Long companyId;
    private String tokenNo;
    private BigInteger mobileNo;
    private String emailId;
    private String prefix;
    private String firstName;
    private String middleInitial;
    private String lastName;
    private Long destinationId;
    private String destinationName;
    private Integer tokenStatus;
    private String metaData;
    private String appointmentDate;

    public TokenDetailsDTO() {
    }

    public TokenDetailsDTO(Long id, Long companyId, String tokenNo, BigInteger mobileNo, String emailId, String prefix, String firstName, String middleInitial, String lastName, Long destinationId, String destinationName, Integer tokenStatus, String appointmentDate) {
        this.id = id;
        this.companyId = companyId;
        this.tokenNo = tokenNo;
        this.mobileNo = mobileNo;
        this.emailId = emailId;
        this.prefix = prefix;
        this.firstName = firstName;
        this.middleInitial = middleInitial;
        this.lastName = lastName;
        this.destinationId = destinationId;
        this.destinationName = destinationName;
        this.tokenStatus = tokenStatus;
        this.appointmentDate = appointmentDate;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Long companyId) {
        this.companyId = companyId;
    }
   

    public String getTokenNo() {
        return tokenNo;
    }

    public void setTokenNo(String tokenNo) {
        this.tokenNo = tokenNo;
    }

    public String getEmailId() {
        return emailId;
    }

    public void setEmailId(String emailId) {
        this.emailId = emailId;
    }

    public BigInteger getMobileNo() {
        return mobileNo;
    }

    public void setMobileNo(BigInteger mobileNo) {
        this.mobileNo = mobileNo;
    }

    public String getPrefix() {
        return prefix;
    }

    public void setPrefix(String prefix) {
        this.prefix = prefix;
    }
        
    public String getFirstName() {
            return firstName;
    }
    public void setFirstName(String firstName) {
            this.firstName = firstName;
    }
    public String getMiddleInitial() {
            return middleInitial;
    }
    public void setMiddleInitial(String middleInitial) {
            this.middleInitial = middleInitial;
    }
    public String getLastName() {
            return lastName;
    }
    public void setLastName(String lastName) {
            this.lastName = lastName;
    }

    public Long getDestinationId() {
        return destinationId;
    }

    public void setDestinationId(Long destinationId) {
        this.destinationId = destinationId;
    }

    public String getDestinationName() {
        return destinationName;
    }

    public void setDestinationName(String destinationName) {
        this.destinationName = destinationName;
    }

    public Integer getTokenStatus() {
        return tokenStatus;
    }

    public void setTokenStatus(Integer tokenStatus) {
        this.tokenStatus = tokenStatus;
    }

    public String getMetaData() {
         StringBuilder metaBuilder = new StringBuilder();
        metaBuilder.append(this.firstName);
        metaBuilder.append(" ");
        metaBuilder.append(this.middleInitial);
        metaBuilder.append(" ");
        metaBuilder.append(this.lastName);
        metaBuilder.append(" ");
        metaBuilder.append(this.destinationName);
        metaBuilder.append(" ");
        metaBuilder.append(this.mobileNo);
        metaBuilder.append(" ");
        metaBuilder.append(this.tokenNo);
        metaBuilder.append(" ");
        metaBuilder.append(this.tokenStatus);
        metaBuilder.append(" ");
        metaBuilder.append(this.emailId);
        this.metaData = metaBuilder.toString();
        return metaData;
    }

    public void setMetaData(String metaData) {
        this.metaData = metaData;
    }

    public String getAppointmentDate() {
        return appointmentDate;
    }

    public void setAppointmentDate(String appointmentDate) {
        this.appointmentDate = appointmentDate;
    }

    @Override
    public String toString() {
        return "TokenDetailsDTO{" + "id=" + id + ", companyId=" + companyId + ", tokenNo=" + tokenNo + ", mobileNo=" + mobileNo + ", emailId=" + emailId + ", prefix=" + prefix + ", firstName=" + firstName + ", middleInitial=" + middleInitial + ", lastName=" + lastName + ", destinationId=" + destinationId + ", destinationName=" + destinationName + ", tokenStatus=" + tokenStatus + ", metaData=" + metaData + ", appointmentDate=" + appointmentDate + '}';
    }

}
